Skip to main content

Versi 1

FieldIsi
Dokumen IDVBS-LAP-024
DeskripsiLaporan pesanan pembelian (PO) yang belum diproses penuh: sisa kuantitas dan nominal per PO beserta rincian barang
Nomor Revisi1
Tanggal2026-10-04
KeteranganDokumentasi baseline dari dokumentasi fitur demo dan kode FE

1. Ringkasan​

a. In scope​

  • User membuka laporan pesanan barang belum diproses dari daftar Laporan Pembelian.
  • User memfilter periode, cabang, supplier, dan user.
  • User melihat daftar PO beserta kuantitas masuk, batal, reorder, sisa, dan nominal sisa.
  • User membuka rincian barang per PO.
  • User membuka dokumen PO asal.
  • User mengekspor laporan ke Excel sesuai hak akses.

b. Catatan​

c. Kesimpulan​

  • [FE] -
  • [BE] -

2. Functional Requirement​

KodeDeskripsi
FR-01Halaman /brand/:id/pesanan-belumdiproses menampilkan PO yang masih memiliki sisa dalam periode terfilter
FR-02Sistem menampilkan kartu ringkas nominal sisa PO
FR-03User dapat melihat rincian barang per PO: kuantitas, masuk, batal, reorder, harga, diskon, subtotal
FR-04User dapat membuka dokumen PO dari nomor invoice
FR-05User dengan izin Excel dapat mengekspor ringkasan PO dan rincian barang

3. Use Case List​

KodeDeskripsi
UC-01Melihat pesanan barang belum diproses
UC-02Melihat rincian barang per PO
UC-03Mengekspor pesanan belum diproses ke Excel

4. Use Case Scenario​

UC-01 : Melihat pesanan barang belum diproses​

AktorUser pembelian
DeskripsiUser melihat daftar PO yang belum diproses penuh dalam periode tertentu
PrekondisiUser memiliki izin #lap-pesanan-barang-belum-diproses
Alur utama1. User membuka Laporan Pembelian lalu kartu pesanan belum diproses.
2. User mengisi periode dan cabang; dapat menambah filter supplier dan user.
3. User menekan tombol tampilkan.
4. Sistem menampilkan PO: tanggal, nomor, cabang, supplier, kuantitas, masuk, batal, reorder, sisa, total nominal, dan sisa nominal.
5. Sistem menampilkan kartu Nominal Sisa PO.
Alur negatif- Jika periode kosong, muncul alert "Periode Tidak Boleh Kosong".
- Jika data kosong, muncul "Data yg anda filter tidak ditemukan silahkan ganti filter".
Bisnis rule- Laporan membaca data PO yang masih memiliki sisa proses.
- Nomor invoice mengarah ke halaman lihat purchase order.
- Tombol kembali mengarah ke hub laporan pembelian.
PostkondisiDaftar PO dan nominal sisa tampil
TriggerUser menekan tombol tampilkan
Kode FRFR-01
FR-02
FR-04

UC-02 : Melihat rincian barang per PO​

AktorUser pembelian
DeskripsiUser membuka baris barang di dalam setiap PO
PrekondisiDaftar PO sudah tampil
Alur utama1. User mengaktifkan opsi lihat rincian barang.
2. Sistem menampilkan per PO: barang, kuantitas, masuk, batal, reorder, satuan, harga, diskon, subtotal.
Alur negatif- Jika detail barang gagal dimuat, muncul pesan kesalahan mengambil data di server.
Bisnis rule- Rincian dikelompokkan per header PO.
- Nama supplier atau cabang kosong ditampilkan sebagai "Tidak Diisi" atau "Tidak Ditemukan".
PostkondisiRincian barang per PO tampil
TriggerUser mengaktifkan lihat rincian barang
Kode FRFR-03

UC-03 : Mengekspor pesanan belum diproses ke Excel​

AktorUser dengan izin Excel
DeskripsiUser mengunduh ringkasan dan rincian PO sebagai file Excel
PrekondisiUser memiliki izin #lap-pesanan-barang-belum-diproses aksi excel
Alur utama1. User menekan tombol export Excel.
2. Sistem menyusun dua lembar: ringkasan PO dan rincian pesanan.
3. Browser mengunduh "Daftar Pesanan Yang Belum Diproses.xlsx".
Alur negatif- Jika periode kosong, muncul alert "Periode Tidak Boleh Kosong".
- Jika data belum ada, muncul "Data tidak ditemukan".
Bisnis rule- Ekspor dibuat di browser tanpa API export terpisah.
PostkondisiFile Excel terunduh
TriggerUser menekan tombol export Excel
Kode FRFR-05

5. Data Flow Diagram​

DFD-01 — Alur data pesanan belum diproses​

6. Sequence Diagram​

SD-01 — UC-01 : Melihat pesanan barang belum diproses​

SD-02 — UC-02 : Melihat rincian barang per PO​

SD-03 — UC-03 : Mengekspor pesanan belum diproses ke Excel​

7. Table Schema​

8. API Schema​

EndpointStatusPerubahan
POST /laporan-pembelian/po-reportexisting-
GET /invoice-purchase-orderexisting-
GET /gudangexisting-
POST /supplier/get-supplierexisting-